package cn.sz.dzy.io.file;

/**
 * @program: io
 * @description: 上传文件
 * @author: DingZhenYun
 * @create: 2024-05-23 16:12
 **/

import java.io.DataOutputStream;
import java.io.FileInputStream;
import java.io.IOException;
import java.net.Socket;


public class Client {
    public static void main(String[] args)  {
        System.out.println("==客户端的启动==");
        try {
            FileInputStream fileInputStream = new FileInputStream("E:\\xm\\aaaa.jpg");
            // （1）创建一个Socket的通信管道，请求与服务端的端口连接。
            Socket serverSocket=new Socket("127.0.0.1",8888);
            //  2、把字节输出流包装成一个数据输出流
            DataOutputStream dataOutputStream = new DataOutputStream(serverSocket.getOutputStream());
            //  3、先发送上传文件的后缀给服务端
            dataOutputStream.writeUTF(".jpg");
            //  4、把文件数据发送给服务端进行接收
            byte[] buffer = new byte[1024];
            int len;
            while((len=fileInputStream.read(buffer))>0){
                dataOutputStream.write(buffer,0,len);
            }
            dataOutputStream.flush();
            // 通知服务端这边的数据发送完毕了
            serverSocket.shutdownOutput();
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }
}
